#ifndef AESCRYPTO_H
#define AESCRYPTO_H
#include <openssl/aes.h>
#include <QString>

class AesCrypto
{
public:
    // 可使用 16byte, 24byte, 32byte 的秘钥
    AesCrypto(QString key);
    ~AesCrypto();
    // 加密
    QString aesCBCEncrypt(QString text);
    // 解密
    QString aesCBCDecrypt(QString encStr);

private:
    QString aesCrypto(QString data, int crypto);
    void generateIvec(unsigned char* ivec);

private:
    AES_KEY m_encKey;
    AES_KEY m_decKey;
    QByteArray m_key;	// 秘钥
};

#endif // AESCRYPTO_H
